package com.demo.apparel.service.web;

import com.demo.apparel.dto.web.AdminLoginDTO;
import com.demo.apparel.dto.web.AdminLoginResponseDTO;
import com.demo.apparel.entity.Admin;
import com.demo.apparel.entity.AdminInfo;
import com.demo.apparel.vo.web.AdminVO;

import java.util.List;

public interface AdminService {
    AdminLoginResponseDTO login(AdminLoginDTO dto);

    /**
     * 修改管理员密码
     * @param adminId 管理员ID
     * @param oldPassword 旧密码
     * @param newPassword 新密码
     */
    void updatePassword(String adminId, String oldPassword, String newPassword);

    List<AdminVO> getAllAdminWithInfo();

//    void addAdmin(Admin admin);
      void addAdmin(Admin admin, AdminInfo adminInfo);

    void deleteAdmin(String adminId);

    /**
     * 微信扫码登录
     * @param code 微信临时登录凭证
     * @return 登录返回信息（含 token）
     */
    AdminLoginResponseDTO wxLogin(String code);

    /**
     * 已登录管理员绑定微信
     * @param adminId 管理员ID
     * @param code 微信临时登录凭证
     */
    void bindWx(String adminId, String code);
}
